Method and System for a Double Search User Group Selection Scheme With Range Reduction in TDD Multiuser MIMO Downlink Transmission

ABSTRACT

Certain aspects of a method and system for processing signals in a communication system may include maximizing system capacity for a time division duplex (TDD) multiple-input multiple-output (MIMO) system, based on reducing a search range within which to find a group of signals having maximum channel gain. At least one of: a first signal for a first user and a second signal for a second user may be selected, which are both within the reduced search range, and which provides a maximum system capacity. The first signal for the first user may be selected from the reduced search range corresponding to a channel gain that is greater than a channel gain corresponding to a remaining portion of the reduced search range. The reduced search range may be generated by sorting a plurality of signals based on a channel gain corresponding to each of the plurality of signals.

CROSS-REFERENCE TO RELATED APPLICATIONS/INCORPORATION BY REFERENCE

This application is a continuation of co-pending U.S. patent application Ser. No. 13/611,957, which was filed on Sep. 12, 2012, as a continuation of U.S. patent application Ser. No. 13/074,708, which was filed on Mar. 29, 2011, and issued as U.S. Pat. No. 8,412,128 on Apr. 2, 2013, which was a continuation of U.S. patent application Ser. No. 11/231,586, which was filed on Sep. 21, 2005, and issued as U.S. Pat. No. 7,917,100 on Mar. 29, 2011, each of which is hereby incorporated by reference.

This application also makes reference to:

U.S. application Ser. No. 11/232,340 filed Sep. 21, 2005 and issued as U.S. Pat. No. 7,826,416 on Nov. 22, 2010;

U.S. application Ser. No. 11/232,266 filed Sep. 21, 2005 and issued as U.S. Pat. No. 7,630,337 on Dec. 8, 2009;

U.S. application Ser. No. 11/231,501 filed Sep. 21, 2005 and issued as U.S. Pat. No. 7,899,421 on Mar. 1, 2011;

U.S. application Ser. No. 11/231,699 filed Sep. 21, 2005 and issued as U.S. Pat. No. 7,839,842 on Nov. 23, 2010;

U.S. application Ser. No. 11/232,369 filed Sep. 21, 2005 and issued as U.S. Pat. No. 7,636,553 on Dec. 22, 2009;

U.S. application Ser. No. 11/231,701 filed Sep. 21, 2005 and issued as U.S. Pat. No. 7,917,101 on Mar. 29, 2011;

U.S. application Ser. No. 11/232,362 filed Sep. 21, 2005 and issued as U.S. Pat. No. 7,515,878 on Apr. 7, 2009; and

U.S. application Ser. No. 11/231,416 filed Sep. 21, 2005 and issued as U.S. Pat. No. 7,936,808 on May 3, 2011; and

Each of the above stated applications is hereby incorporated by reference in its entirety.

FIELD

Certain embodiments of the invention relate to time division duplex (TDD) multiuser multiple-input multiple-output (MIMO) downlink transmission. More specifically, certain embodiments of the invention relate to a method and system for a double search user group selection scheme with range reduction in TDD multiuser MIMO downlink transmission.

BACKGROUND

Mobile communications have changed the way people communicate and mobile phones have been transformed from a luxury item to an essential part of every day life. The use of mobile phones is today dictated by social situations, rather than hampered by location or technology. While voice connections fulfill the basic need to communicate, and mobile voice connections continue to filter even further into the fabric of every day life, the mobile Internet is the next step in the mobile communication revolution. The mobile Internet is poised to become a common source of everyday information, and easy, versatile mobile access to this data will be taken for granted.

Third generation (3G) cellular networks have been specifically designed to fulfill these future demands of the mobile Internet. As these services grow in popularity and usage, factors such as cost efficient optimization of network capacity and quality of service (QoS) will become even more essential to cellular operators than it is today. These factors may be achieved with careful network planning and operation, improvements in transmission methods, and advances in receiver techniques. To this end, carriers need technologies that will allow them to increase downlink throughput and, in turn, offer advanced QoS capabilities and speeds that rival those delivered by cable modem and/or DSL service providers.

In order to meet these demands, communication systems using multiple antennas at both the transmitter and the receiver have recently received increased attention due to their promise of providing significant capacity increase in a wireless fading environment. These multi-antenna configurations, also known as smart antenna techniques, may be utilized to mitigate the negative effects of multipath and/or signal interference on signal reception. It is anticipated that smart antenna techniques may be increasingly utilized both in connection with the deployment of base station infrastructure and mobile subscriber units in cellular systems to address the increasing capacity demands being placed on those systems. These demands arise, in part, from a shift underway from current voice-based services to next-generation wireless multimedia services that provide voice, video, and data communication.

The utilization of multiple transmit and/or receive antennas is designed to introduce a diversity gain and to raise the degrees of freedom to suppress interference generated within the signal reception process. Diversity gains improve system performance by increasing received signal-to-noise ratio and stabilizing the transmission link. On the other hand, more degrees of freedom allow multiple simultaneous transmissions by providing more robustness against signal interference, and/or by permitting greater frequency reuse for higher capacity. In communication systems that incorporate multi-antenna receivers, a set of M receive antennas may be utilized to null the effect of (M−1) interferers, for example. Accordingly, N signals may be simultaneously transmitted in the same bandwidth using N transmit antennas, with the transmitted signal then being separated into N respective signals by way of a set of N antennas deployed at the receiver. Systems that utilize multiple transmit and receive antennas may be referred to as multiple-input multiple-output (MIMO) systems. One attractive aspect of multi-antenna systems, in particular MIMO systems, is the significant increase in system capacity that may be achieved by utilizing these transmission configurations. For a fixed overall transmitted power, the capacity offered by a MIMO configuration may scale with the increased signal-to-noise ratio (SNR). For example, in the case of fading multipath channels, a MIMO configuration may increase system capacity by nearly M additional bits/cycle for each 3-dB increase in SNR.

The widespread deployment of multi-antenna systems in wireless communications has been limited by the increased cost that results from increased size, complexity, and power consumption. This poses problems for wireless system designs and applications. As a result, some initial work on multiple antenna systems may be focused on systems that support single user point-to-point links. However, the use of multi-antenna techniques for a multiuser environment to improve total throughput remains a challenge.

Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with some aspects of the present invention as set forth in the remainder of the present application with reference to the drawings.

BRIEF SUMMARY

A system and/or method is provided for a double search user group selection scheme with range reduction in time division duplex (TDD) multiuser multiple-input multiple-output (MIMO) downlink transmission, substantially as shown in and/or described in connection with at least one of the figures, as set forth more completely in the claims.

These and other advantages, aspects and novel features of the present invention, as well as details of an illustrated embodiment thereof, will be more fully understood from the following description and drawings.

BRIEF DESCRIPTION OF SEVERAL VIEWS OF THE DRAWINGS

FIG. 1A is a top-level block diagram illustrating an exemplary multiuser multiple-input-multiple-output (MIMO) downlink transmission system with linear precoding, in accordance with an embodiment of the invention.

FIG. 1B illustrates a block diagram of a multiuser downlink communication environment that may be utilized in connection with an embodiment of the invention.

FIG. 2A is a flowchart illustrating double search user group selection scheme with range reduction, in accordance with an embodiment of the invention.

FIG. 2B is a flow chart that illustrates exemplary steps in a method for a range reduction scheme for user selection in a multiuser MIMO downlink transmission, in accordance with an embodiment of the invention.

FIG. 3 is a graph illustrating a comparison of sum capacity of a system using an optimal brute-force user selection with L=100, a double search algorithm with L=10 and a double search algorithm with L=5, in accordance with an embodiment of the invention.

FIG. 4 is a graph illustrating a comparison of bit error rate (BER) of a system using an optimal brute-force user selection with L=100, a double search algorithm with L=10 and a double search algorithm with L=5, in accordance with an embodiment of the invention.

FIG. 5 is a flowchart illustrating double search user group selection scheme with range reduction in TDD multiuser MIMO downlink transmission, in accordance with an embodiment of the invention.

DETAILED DESCRIPTION OF THE INVENTION

Certain aspects of a method and system for processing signals in a communication system may comprise maximizing system capacity based on reducing a search range within which to find a group of signals having maximum channel sum transmission rate, for a time division duplex (TDD) multiple-input multiple-output (MIMO) system. At least one of: a first signal for a first user and a second signal for a second user may be selected, which are both within the reduced search range, and which provides a maximum system capacity.

FIG. 1A is a top-level block diagram illustrating an exemplary multiuser multiple-input-multiple-output (MIMO) downlink transmission system with linear precoding, in accordance with an embodiment of the invention. Referring to FIG. 1A, there is shown a communication system 100 that may comprise a base station 102 a and a plurality of users 122 a, . . . , 130 a. In the communication system 100, the base station 102 a may be equipped with M antennas and K users 122 a, . . . , 130 a may each have a single antenna. In this implementation, the total number of users or receiver antennas may be equal or higher than the number of base station antennas, that is, K≧M.

The base station 102 a may comprise a plurality of channel encoders 104 a, . . . , 106 a, a user scheduler 108 a, a plurality of modulators (MOD) 110 a, . . . , 112 a, a power control block 114 a, a beamforming or linear precoding block 116 a, an uplink channel estimator block 152, a processor 154, a memory 156 and a range reduction algorithm block 160. Each of the plurality of users 122 a, . . . , 130 a may comprise one of a plurality of demodulators (DEM) 132 a, . . . , 140 a, and one of a plurality of channel decoders 142 a, . . . , 150 a.

The channel encoders 104 a, . . . , 106 a may comprise suitable logic, circuitry, and/or code that may be adapted to encode binary data for each of the K users in the communication system 100. The beamforming or linear precoding block 116 a may comprise suitable logic, circuitry, and/or code that may be adapted to processes the user data symbols to separate signals intended for different users such that each user receives little or no interference from other users. With M antennas at the base station 102 a, the beamforming or linear precoding block 116 a may separate at most M different signals, that is, the base station 102 a may transmit to at most M users at a time. Therefore, for each channel realization, the base station 102 a may need to select M or less than M users among all the K users to transmit.

The user scheduler 108 a may comprise suitable logic, circuitry, and/or code that may be adapted to find a best user group that optimizes certain performance criterion such as the sum throughput of the system, for example. In this regard, the user scheduler 108 a may be adapted to perform the steps of a double search user selection algorithm to find the best user group. The user scheduler 108 a may utilize knowledge of the channel state information (CSI) provided by the uplink channel estimator block 152 when determining the best user group. For a time division duplex (TDD) system, the base station 102 a may be adapted to estimate the uplink channel and use it as the downlink channel based on the channel reciprocity property between the uplink and downlink. The base station 102 a may be assumed to have channel knowledge of every user through accurate uplink channel estimation.

The user scheduler 108 a may be adapted to select a first user with the strongest channel gain and a second user with the next second strongest channel gain. The user scheduler 108 a may be adapted to determine a first maximum system capacity based on the first user and a second maximum system capacity based on the second user. The user scheduler 108 a may also be adapted to select the highest of the first maximum system capacity and the second maximum system capacity as the maximum system capacity to be supported by the communication system 100. In this regard, for a case when M=2, the user scheduler 108 a may select the user group comprising a pair of users associated with the maximum system capacity selected.

The modulators 110 a, . . . , 112 a may comprise suitable logic, circuitry, and/or code that may be adapted to modulate the binary data of each of the users selected by the user scheduler 108 a. In this regard, the modulation operation on the binary data may result in a plurality of complex symbols, for example. The power control block 114 a may comprise suitable logic, circuitry, and/or code that may be adapted to allocate different users with different power levels in accordance with their respective channel quality, for example.

The user scheduler 108 a, the power control block 114 a, and/or the beamforming or linear precoding block 116 may require knowledge of the state of the downlink channel. The uplink channel estimator block 152 may comprise suitable logic, circuitry, and/or code that may be adapted to estimate, store and/or transfer channel state information associated with the users 122 a, . . . , 130 a. In this regard, the uplink channel estimator block 152 may be adapted to transfer the channel state information to the user scheduler 108 a, the power control block 114 a, and/or the beamforming or linear precoding block 116 when necessary.

The processor 154 may comprise suitable logic, circuitry, and/or code that may be adapted to process information and/or data associated with the generation of transmission signals at the base station 102 a. The processor 154 may also be adapted to control at least a portion of the operations of the base station 102 a, for example, the processor 154 may be adapted to maximize system capacity based on reducing a search range within which to find a group of signals having maximum channel sum transmission rate. The memory 156 may comprise suitable logic, circuitry, and/or code that may be adapted to store data and/or control information that may be utilized in the operation of at least a portion of the base station 102 a.

The demodulators 132 a, . . . , 140 a in the users 122 a, . . . , 130 a may comprise suitable logic, circuitry, and/or code that may be adapted to demodulate the signals received from the base station 102 a, for example. The channel decoders 142 a, . . . , 150 a may comprise suitable logic, circuitry, and/or code that may be adapted to decode the demodulated signals from the demodulators 132 a, . . . , 140 a into binary bit streams, for example.

The range reduction algorithm block 160 may comprise suitable logic, circuitry, and/or code that may be adapted to reduce the user search range from the plurality of users. A desired user group may be determined by searching among the L strongest users. The range reduction algorithm may be assumed to be carried out offline at the system design stage. Notwithstanding, an embodiment of the invention may incorporate an adaptive algorithm to update L at real time with online channel measurements while using the offline calculated user range as the initial value. Based on the reduction range [1:L], the search may be restricted within the first L strongest users for a user pair [idx₁, idx₂] that has the maximum instantaneous sum capacity.

FIG. 1B illustrates a block diagram of a finite rate multiuser communication environment that may be utilized in connection with an embodiment of the invention. Referring to FIG. 1B, there is shown a multiuser downlink communication system with a base station 170, a plurality of transmit antennas, 152 _(1 . . . M), and a plurality of receive antennas, 154 _(1 . . . K), one antenna for each of the K users.

The base station 170 may comprise suitable logic, circuitry and/or code that may be adapted to relay signals to and from mobile terminals or handsets within a given range. The operation of the base station 170 may be substantially similar to the operation of the base station 102 a described in FIG. 1A. The plurality of transmit antennas 172 _(1 . . . M) may transmit processed RF signals to the plurality of receive antennas 174 _(1 . . . K). The plurality of receive antennas 174 _(1 . . . K) may each receive a portion of the transmitted signal.

The signal model may be represented as

$\begin{matrix} {{\begin{bmatrix} y_{1} \\ y_{2} \\ \vdots \\ y_{k} \end{bmatrix} = {{\begin{bmatrix} h_{1} \\ h_{2} \\ \vdots \\ h_{k} \end{bmatrix}x} + n}},} & (1) \end{matrix}$

where y_(k) (k=1, . . . , K) is the received signal by user k, h_(k)ε□^(1×M) is the channel vector to user k, x ε□^(M×1) is the transmitted symbol vector by the base station 170, and nε□^(K×1) is the additive white Gaussian noise (AWGN) with zero mean and unit variance. The transmitted symbols may satisfy a power constraint, P represented by

E[x ^(H) x]≦P,

where (·)^(H) represents complex conjugate transpose.

Each element in h_(k) may be assumed to be a zero-mean circularly symmetric complex Gaussian (ZMCSCG) random variable with unit variance. The users may be assumed to experience independent fading. The channel vectors {h_(k)}_(k=1) ^(K) may be statistically independent to each other. The channel state information (CSI), h_(κ), may be assumed to be known to user k, but not to other users. For a time division duplex (TDD) system, the base station may be adapted to estimate the uplink channel and use it as the downlink channel based on the channel reciprocity property between the uplink and downlink. The base station 170 may be assumed to have channel knowledge of every user through accurate uplink channel estimation.

The zero-forcing (ZF) linear precoder may achieve a sum capacity when the number of users, K, approach infinity. The ZF precoders may be adapted to provide near-optimal performance even with a limited number of users, for example, K=10 users. The zero-forcing precoders are a specific type of linear precoders. When the base station 170 decides to transmit to a group of users D⊂{1, . . . , K} with d=|D|≦K, a linear precoding scheme may linearly weigh the data symbols, s=[s₁, . . . , s_(d)]^(T) before they are transmitted from the base station 170 according to,

x=FPs,  (2)

where x is the transmitted signal vector as in (1), F=[f₁, . . . , f_(d)] is the M×d linear precoding matrix with normalized columns (∥f_(k)∥=1), and P=diag{P₁, . . . , P_(d)} with Σ_(i=1) ^(d)P_(i)≦P is the power control matrix that allocates transmit power to different users.

The data symbols s may correspond to the data symbols u_(i) . . . u_(M) that are generated by the plurality of modulators 110 a . . . 112 a. The elements in the linear precoding matrix F may represent the plurality of weighing coefficients utilized by the precoder 116 a. The nonzero elements in the diagonal matrix P may represent the plurality of scaling factors p₁ . . . p_(M) utilized by the power control block 114 a. The received signal may be represented by the following equation:

$\begin{matrix} {\begin{bmatrix} y_{1} \\ y_{2} \\ \vdots \\ y_{d} \end{bmatrix} = {{\begin{bmatrix} h_{1} \\ h_{2} \\ \vdots \\ h_{d} \end{bmatrix}{FPs}} + {n.}}} & (3) \end{matrix}$

A zero-forcing precoder may utilize the pseudo-inverse of the overall channel matrix H_(D)=[h₁ ^(T), . . . , h_(d) ^(T)]^(T) as the weighting matrix when H_(D) has full row rank according to the following equation:

$\begin{matrix} {{W_{D} = {H_{D}^{\dagger} = {H_{D}^{H}\left( {H_{D}H_{D}^{H}} \right)}^{- 1}}},} & (4) \\ {{F_{D} = {W_{D}\begin{bmatrix} \frac{1}{w_{1}} & \; & \; \\ \; & \ddots & \; \\ \; & \; & \frac{1}{w_{d}} \end{bmatrix}}},} & (5) \end{matrix}$

where {w_(i)}_(i=1) ^(d) are the columns of W_(D). By defining

$\begin{matrix} {\xi_{i}\bullet \frac{1}{w_{i}}} & (6) \end{matrix}$

and substituting (5) in (3), the received signal y_(i) for each user with zero-forcing precoding may be represented according to the following expression:

y _(i)ξ_(i) P _(i) s _(i) +n _(i) ,∀iεD.  (7)

The multiuser downlink channel may be represented as a set of parallel channels. The maximum system sum capacity of the given user group D, C_(D) may be represented as

$\begin{matrix} {{C_{D} = {\sum\limits_{i \in D}^{\;}{\log \left( {1 + {\xi_{i}P_{i}}} \right)}}},} & (8) \end{matrix}$

where the optimal P_(i) is given by a water-filling solution that may be represented as,

$\begin{matrix} {{P_{i} = \left( {\mu - \frac{1}{\xi_{i}}} \right)^{+}},} & (9) \end{matrix}$

with a water level μ chosen to satisfy

${\sum\limits_{i \in D}^{\;}\left( {\mu - \frac{1}{\xi_{i}}} \right)^{+}} = {P.}$

The maximum achievable sum capacity for a given channel realization, C may be obtained by searching over all the possible user groups according to

$\begin{matrix} {C = {\max\limits_{{D \subseteq {\{{1,\ldots \mspace{14mu},K}\}}},{{D} \leq M}}\; {C_{D}.}}} & (10) \end{matrix}$

According to (10), for a given channel realization, the optimal brute-force user group selection for ZF precoding requires searching over all Σ_(i=1) ^(M)(_(i) ^(K)) possible user groups to find the user group with the maximum system sum capacity. In addition, for each candidate user group, a water-filling solution needs to be computed to obtain the corresponding maximum system sum capacity. As a result, a fairly high computational cost may be expected, especially when K is large.

A double search user group selection scheme may be combined with search range reduction, where the L strongest users are selected. When number of antennas at the base station 170, M=2, the number of candidate user groups may be 2L−1 as opposed to

$\frac{\kappa \left( {\kappa + 1} \right)}{2}$

for the brute-force search algorithm. A significant reduction in searching complexity may be achieved, especially when L<<K. Third-generation cellular communication standards such as WCDMA and CDMA 2000 typically employ two antennas at the base station 170. Notwithstanding, an embodiment of the invention may extend the algorithm to the case with any M number of antennas at the base station 170.

FIG. 2A is a flowchart illustrating double search user group selection scheme with range reduction, in accordance with an embodiment of the invention. Referring to FIG. 2A, exemplary steps may start at step 200. In step 202, the plurality of K users may be sorted according to their channel power. The CSI may be assumed to be available at the base station 170 (FIG. 1B), in a sense that the multiple-input-single-output (MISO) channel impulse response h_(k)ε□^(1×2) (M=2) of each user is known at the transmitter. For each channel realization, the users may be sorted and indexed in terms of their channel gains according to,

γ₁≧γ₂≧ . . . ≧γ_(K).  (11)

In step 204, a range reduction algorithm may be applied to determine the reduced user search range L. A desired user group may be determined by searching among the L strongest users. In accordance with an embodiment of the invention, the step 204 may be carried out offline at the system design stage. Notwithstanding, an embodiment of the invention may incorporate an adaptive algorithm to update L at real time with online channel measurements while using the offline calculated user range as the initial value. Based on the reduction range [1:L] obtained from step 204, the search may be restricted within the first L strongest users for a user pair [idx₁, idx₂] that has the maximum instantaneous sum capacity.

U.S. application Ser. No. 11/231,699 filed Sep. 21, 2005 (now U.S. Pat. No. 7,839,842), provides a detailed description of a range reduction algorithm, and is hereby incorporated by reference in its entirety.

Utilizing the double search algorithm, the first candidate of the user pair may be restricted to be the first and second strongest users (user 1 and user 2). In step 206, the maximum system capacity C_(max) may be initialized to C_(max)=C (1), which corresponds to the case where base station 170 only transmits to the strongest user according to the following expression:

C _(max) =C(1)=log₂(1+ρ·γ₁),  (12)

where ρ is the average signal to noise ratio (SNR) of the system. The optimal user index may be initialized to be [idx₁, idx₂]=[1,0] with idx₂=0 representing that there is no second user. In step 208, the iteration variable k may be incremented according to k=i+1. In step 210, it may be determined whether C(i,k) is greater than the system maximum sum capacity C_(max), which may be given by the expression:

$\begin{matrix} {{{C\left( {i,k} \right)} = {{\log_{2}\left( {1 + {\frac{1}{2}{\rho \cdot \gamma_{i} \cdot \alpha_{i,k}}}} \right)} + {\log_{2}\left( {1 + {\frac{1}{2}{\rho \cdot \gamma_{k} \cdot \alpha_{i,k}}}} \right)}}},{i = 1},{{2\mspace{14mu} k} = 2},\ldots \mspace{14mu},L,} & (13) \end{matrix}$

where ρ is the average SNR of the system, and α_(i,k) is a parameter that describes the orthogonality between h_(i) and h_(κ), according to the following expression:

$\begin{matrix} {\alpha_{i,k} = {1 - {\frac{{{\langle{h_{i},h_{k}}\rangle}}^{2}}{{h_{i}}^{2} \cdot {h_{k}}^{2}}.}}} & (14) \end{matrix}$

The possible user pairs [i,k] with i=1,2 and k=2, . . . , L may be examined and compared to the system maximum sum capacity C_(max), with C(i,k).

If the system capacity C(i,k) is greater than the current maximum capacity C_(max), control passes to step 212. In step 212, the maximum capacity C_(max) may be updated with C(i,k) and the optimal user index [idx₁, idx₂] may be updated by [i,k]. Control then passes to step 214. If the system capacity C(i,k) is not greater than the current maximum capacity C_(max), control passes to step 214.

In step 214, it may be determined whether the iteration variable k is less than or equal to the number of reduced strongest users L. If the iteration variable k is less than or equal to the number of reduced strongest users L, control passes to step 216. In step 216, the iteration variable k may be incremented by 1 and control passes to step 210. If the iteration variable k is not less than or equal to the number of reduced strongest users L, control passes to step 218.

In step 218, it may be determined whether the iteration variable i is less than or equal to the number of transmit antennas M=2. If the iteration variable i is less than or equal to the number of transmit antennas M=2, control passes to step 220. In step 220 the iteration variable i may be incremented by 1. Control then passes to step 208. If the iteration variable i is not less than or equal to the number of transmit antennas M=2, control passes to step 222.

In step 222, an optimal user pair index [idx₁, idx₂] may be determined to calculate the maximum system sum capacity. If both idx₁ and idx₂ are valid indices between 1 and K, then the base station 170 may be adapted to communicate to both user idx₁ and user idx₂ at the same time utilizing spatial multiplexing. The transmitter precoding matrix F may be formed according to the following expression:

F=[ν _(idx) ₂ ^(⊥)ν_(idx) ₁ ^(⊥)]*/√{square root over (2)},  (15)

where vectors idx₁ and idx₂ are the unit norm directional vectors given by the expression:

$\begin{matrix} {{v_{{idx}_{1}} = \frac{h_{{idx}_{1}}}{h_{{idx}_{1}}}},{v_{{idx}_{2}} = \frac{h_{{idx}_{2}}}{h_{{idx}_{2}}}},} & (16) \end{matrix}$

The precoder provided in equation (15) is equivalent to the form given by (5). If idx₂ is equal to 0, the base station 170 may be communicating only to the strongest user or the idx₁ ^(th) user providing better sum capacity than using spatial multiplexing. The precoding matrix F may be chosen using the following expression:

F=ν _(idx) ₁ *  (17)

Control then passes to end step 224.

FIG. 2B is a flow chart that illustrates exemplary steps in a method for a range reduction scheme for user selection in a multiuser MIMO downlink transmission, in accordance with an embodiment of the invention. Referring to FIG. 2B, in step 252, channel state information (CSI) may be derived, step 254 comprises a search for optimal users, step 256 may comprise computing a cumulative distribution function (CDF) among user indexes, and step 258 may comprise computing a reduced search range.

In step 252 CSI may be derived based on a plurality of T independent channel realizations, for example:

{h _(k)(t)}_(k=1) ^(K) ,t=1, . . . ,T.  (18)

The CSI may comprise channel gain, or signal gain, information. For each channel realization, users among the full set of K users may be sorted, and indexed, in an order based on the values of the channel gains corresponding to each of the K users. For example, a user with a larger value of corresponding channel gain may be placed in the sorted list at a higher index than a user with a smaller value of corresponding channel gain as in the following expression:

γ₁(t)≧γ₂(t)≧ . . . ≧γ_(K)(t),t=1, . . . ,T,  (19)

where

γ_(K)(t)□∥h _(K)(t)∥².

The channel measurement may be carried out either by offline channel sounding or by online channel estimation. In a time division duplex (TDD) system, the base station may compute a channel estimate associated with an uplink channel, and use the uplink channel estimation as an approximation of channel estimates for the corresponding downlink channel based on a channel reciprocity property between the uplink and downlink channels.

In step 254, for each of the channel realizations according to (18), the optimal user group may be determined according to (8) and (10) as in the following expression:

$\begin{matrix} {{{D_{opt}(t)} = {\arg \; {\max\limits_{{D \subseteq {\{{1,\ldots \mspace{14mu},K}\}}},{{D} \leq M}}\; {C_{D}(t)}}}},{t = 1},\ldots \mspace{14mu},T,} & (20) \end{matrix}$

where

$\begin{matrix} {{{C_{D}(t)} = {\sum\limits_{i \in D}^{\;}{\log \left( {1 + {{\xi_{i}(t)}{P_{i}(t)}}} \right)}}},} & (21) \end{matrix}$

and where ξ_(i)(t) and P_(i) (t) may be as defined in (6) and (9), respectively. D_(opt) (t) may be represented as a row vector that contains indexes corresponding to the users contained in the optimal group for channel realization t. By representing the index of the optimal users as a random variable X, the vector as in the following expression:

D _(opt) □[D _(opt)(1),D _(opt)(2), . . . ,D _(opt)(T)]  (22)

may contain samples of the random variable X.

In step 256, an estimate of the cumulative distribution function (CDF) {circumflex over (F)}(X) of X may be produced based on samples from the optimal user index vector, X, that was determined in step 254 according to (22).

In step 258, a threshold, ∂_(th)ε(0,1], may be selected. The reduced search range may then be determined by the relationship as in the following expression:

L={circumflex over (F)} ⁻¹(∂_(th)),  (23)

where {circumflex over (F)}⁻¹ (·) is the inverse function of {circumflex over (F)}(·), for example:

X={circumflex over (F)} ⁻¹({circumflex over (F)}(X))

The threshold may be a measure of the likelihood that a channel realization, evaluated among the full range of K users, will comprise the subset of L users.

In various embodiments of the invention, expression (23) may be implemented by tabulating the CDF {circumflex over (F)}(X) in terms of the random variable comprising the index of optimal users X, and searching for a value of X that corresponds to a ∂_(th). The threshold ∂_(th) may provide a measure of the statistical likelihood that the sum rate, computed among of subset of L users in the reduced searching range, may approach the optimal performance computed among the full group of K users.

While the exemplary embodiment of the invention illustrates a search range reduction scheme a system that utilizes a simple zero-forcing precoder, the invention is not so limited. Various embodiments of the invention may also be utilized with other more sophisticated precoders, for example a minimum mean squared error (MMSE) precoder, a Tomlinson-Harashima precoding (THP) precoder, or a sphere encoding precoder, for example.

FIG. 3 is a graph 302 illustrating a comparison of sum capacity of a system using an optimal brute force user selection with L=100, a double search algorithm with L=10, and a double search algorithm with L=5, in accordance with an embodiment of the invention. Referring to FIG. 3, there is shown a waveform 304 representing sum capacity of a system using an optimal brute force user selection with L=100, a waveform 306 representing sum capacity of a system using a double search algorithm with L=10, and a waveform 308 representing sum capacity of a system using a double search algorithm with L=5.

Referring to FIG. 3, the graph 302 illustrates comparison of sum capacity of a system for a single base station and K=100 users, for example. The base station, for example, base station 170 may be equipped with M=2 antennas, and each user may be equipped with a single antenna. The channels are generated to be flat Rayleigh faded. The transmit antennas at the base station 170 may be assumed to be placed apart enough so as to experience independent fading. The modulation format may be quadrature phase-shift keying (QPSK).

TABLE 1 illustrates a comparison of user selection schemes and the corresponding search complexity for M=2, K=100.

TABLE 1 Selection schemes Brute force with L = Double search Double search 100 with L = 10 with L = 5 The number of 5050 17 7 candidate user groups

Referring to TABLE 1, there is shown that the number of candidate user groups may be

$\frac{L\left( {L + 1} \right)}{2}$

for the brute-forcing search algorithm while the double search algorithm may have only 2L−3 candidate user groups.

FIG. 4 is a graph 402 illustrating a comparison of bit error rate (BER) of a system using an optimal brute force user selection with L=100, a double search algorithm with L=10 and a double search algorithm with L=5, in accordance with an embodiment of the invention. Referring to FIG. 4, there is shown a waveform 404 representing BER of a system using an optimal brute force user selection with L=100, a waveform 406 representing BER of a system using a double search algorithm with L=10, and a waveform 408 representing BER of a system using a double search algorithm with L=5.

Referring to FIG. 4, the graph 402 illustrates comparison of BER of a system for a single base station and K=100 users, for example. The base station, for example, base station 170 may be equipped with M=2 antennas, and each user may be equipped with a single antenna. The channels are generated to be flat Rayleigh faded. The transmit antennas at the base station 170 may be assumed to be spaced or separated apart enough so as to experience independent fading. The modulation format may be quadrature phase-shift keying (QPSK).

FIG. 3 and FIG. 4 illustrate performance of various user group selection schemes for zero-forcing precoding in terms of sum capacity and bit error rate (BER), respectively. The double search user group selection scheme with a reduced search range of L=10 or L=5 may provide close to optimal performance of the brute-forcing search scheme with a full search range L=100, both in terms of capacity and BER. The brute-forcing search algorithm may need to search over

$\frac{L\left( {L + 1} \right)}{2}$

user groups for M=2, whereas the double search algorithm may only have 2L−3 candidate user groups. In accordance with an embodiment of the invention, the user selection technique may be capable of achieving near-optimal performance while significantly reducing the computational burden on the base station. Compared to the brute-force user selection algorithm, the selection scheme may significantly reduce the computational complexity from about K²/2 to 2L−1 (K>>L), where K represents the number of users.

FIG. 5 is a flowchart illustrating double search user group selection scheme with range reduction in TDD multiuser MIMO downlink transmission, in accordance with an embodiment of the invention. Referring to FIG. 5, there is shown exemplary steps that start at step 502. In step 504, a plurality of signals may be sorted based on a channel gain corresponding to each of the plurality of signals. In step 506, a range reduction algorithm may be applied to the sorted plurality of users. A desired user group may be determined by searching among the L strongest users and may be carried out offline at the system design stage. Notwithstanding, an embodiment of the invention may incorporate an adaptive algorithm to update L at real time with online channel measurements while using the offline calculated user range as the initial value. Based on the reduced search range [1:L], the search may be restricted within the first L strongest users for a user pair [idx₁, idx₂] that has the maximum instantaneous sum capacity.

In step 508, a first signal for a first user may be selected corresponding to a channel gain that is greater than a channel gain corresponding to a remaining portion of the reduced search range. In step 510, a first system capacity may be maximized based on the channel gain corresponding to the selected first signal for the first user. In step 512, a second signal for a second user corresponding to a channel gain from the remaining portion of the reduced search range may be selected that is greater than a channel gain corresponding to a remaining portion of the remaining portion of the reduced search range. In step 514, a second system capacity may be maximized based on the channel gain corresponding to the selected second signal for the second user. In step 516, the system capacity may be maximized based on a greater of the maximized first system capacity and the maximized second system capacity that may be obtained by searching over all the possible user groups according to

$\begin{matrix} {C = {\max\limits_{{D \subseteq {\{{1,\ldots \mspace{14mu},K}\}}},{{D} \leq M}}\; {C_{D}.}}} & (10) \end{matrix}$

In step 518, a user pair index [idx₁, idx₂] corresponding to the maximized system capacity may be determined. If both idx₁ and idx₂ are valid indices between 1 and K, then the base station 102 a (FIG. 1A) may be adapted to communicate to both user idx₁ and user idx₂ at the same time utilizing spatial multiplexing. The transmitter precoding matrix F may be formed according to the following expression:

F=[ν _(idx) ₂ ^(⊥)ν_(idx) ₁ ^(⊥)]*/√{square root over (2)},  (15)

where vectors ν_(idx) ₁ and ν_(idx) ₂ are the unit norm directional vectors given by the following expression:

$\begin{matrix} {{v_{{idx}_{1}} = \frac{h_{{idx}_{1}}}{h_{{idx}_{1}}}},{v_{{idx}_{2}} = \frac{h_{{idx}_{2}}}{h_{{idx}_{2}}}},} & (16) \end{matrix}$

If idx₂ is equal to 0, the base station 102 a may be communicating only to the strongest user or the idx^(th) ₁ user providing better sum capacity than using spatial multiplexing. The precoding matrix F may be chosen using the following expression:

F=ν _(idx) ₁ *  (17)

The double search user group selection scheme with a reduced search range of L=10 or L=5 may provide close to optimal performance of the brute-forcing search scheme with a full search range L=100, both in terms of capacity and BER. The brute-forcing search algorithm may need to search over

$\frac{L\left( {L + 1} \right)}{2}$

user groups for M=2, whereas the double search algorithm may only have 2L−3 candidate user groups.

In accordance with an embodiment of the invention, a system for processing signals in a communication system may comprise circuitry that maximizes system capacity based on reducing a search range within which to find a group of signals having maximum channel gain, for a time division duplex (TDD) multiple-input multiple-output (MIMO) system. For a time division duplex (TDD) system, the base station 102 a (FIG. 1A) may be adapted to estimate the uplink channel and use it as the downlink channel based on the channel reciprocity property between the uplink and downlink. The base station 102 a may be assumed to have channel knowledge of every user through accurate uplink channel estimation.

The system may further comprise circuitry that selects at least one of: a first signal for a first user and a second signal for a second user, which are both within the reduced search range, and which provides a maximum system capacity. The system further comprises circuitry that selects from the reduced search range, the first signal for the first user corresponding to a channel gain that is greater than a channel gain corresponding to a remaining portion of the reduced search range. The system further comprises circuitry that selects from the remaining portion of the reduced search range, the second signal for the second user corresponding to a channel gain that is greater than a channel gain corresponding to a remaining portion of the remaining portion of the reduced search range.

The system further comprises circuitry that generates the reduced search range by sorting a plurality of signals based on a channel gain corresponding to each of the plurality of signals. A desired user group may be determined by searching among the L strongest users and may be carried out offline at the system design stage. Notwithstanding, an embodiment of the invention may incorporate an adaptive algorithm that updates L in real time, accordingly, or at a specified time instant, with online channel measurements while using the offline calculated user range as the initial value. Based on the reduced search range [1:L], the search may be restricted within the first L strongest users for a user pair [idx₁, idx₂] that has the maximum instantaneous sum capacity.

The user scheduler 108 a may be adapted to maximize a first system capacity based on the channel gain corresponding to the selected first signal for the first user. The user scheduler 108 a may be adapted to maximize a second system capacity based on the channel gain corresponding to the selected second signal for the second user. The maximized system capacity is based on a greater of the maximized first system capacity and the maximized second system capacity. A user pair index [idx₁, idx₂] corresponding to the maximized system capacity may be determined.

Another embodiment of the invention may provide a machine-readable storage, having stored thereon, a computer program having at least one code section executable by a machine, thereby causing the machine to perform the steps as described above for a double search user group selection scheme with range reduction in TDD multiuser MIMO downlink transmission.

Accordingly, the present invention may be realized in hardware, software, or a combination of hardware and software. The present invention may be realized in a centralized fashion in at least one computer system, or in a distributed fashion where different elements are spread across several interconnected computer systems. Any kind of computer system or other apparatus adapted for carrying out the methods described herein is suited. A typical combination of hardware and software may be a general-purpose computer system with a computer program that, when being loaded and executed, controls the computer system such that it carries out the methods described herein.

The present invention may also be embedded in a computer program product, which comprises all the features enabling the implementation of the methods described herein, and which when loaded in a computer system is able to carry out these methods. Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form.

While the present invention has been described with reference to certain embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the scope of the present invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the present invention without departing from its scope. Therefore, it is intended that the present invention not be limited to the particular embodiment disclosed, but that the present invention will include all embodiments falling within the scope of the appended claims. 

1. A method for processing signals in a communication system, comprising: identifying a user group of M users based on a performance criterion associated with the user group; processing a plurality of user data symbols to separate signals intended for the M users in the user group; and transmitting the separate signals to the user group of M users using one or more antennas.
 2. The method of claim 1, wherein the group of M users comprises a subset of a total number of users in the communication system.
 3. The method of claim 1, wherein M is an integer that is less than a number of the one or more antennas.
 4. The method of claim 1, wherein the performance criterion comprises a system capacity associated with the group of M users.
 5. The method of claim 1, wherein identifying the user group of M users comprises using a double search user group selection scheme.
 6. The method of claim 5, wherein the double search user group selection scheme comprises: sorting a plurality of users in the communication system according to a channel power associated with each of the plurality of users in the communication system; initializing a system capacity to a value of a system capacity associated with a first user having the greatest channel power of the plurality of users in the communication system; determining that a second user has a greater system capacity than the system capacity of the first user; and selecting the second user for the group of M users.
 7. The method of claim 5, wherein identifying the user group further comprises range reduction.
 8. The method of claim 7, wherein range reduction comprises selecting the group of M users from among a subset L of a plurality of users in the communication system.
 9. The method of claim 8, further comprising updating the subset L in real time based on online channel measurements.
 10. The method of claim 1, wherein processing the plurality of user data symbols comprises the user data symbols to separate signals intended for the M users in the user group such that interference from other users is mitigated for each user.
 11. A communication system, comprising: a user scheduler configured to identify a user group of M users based on a performance criterion associated with the user group; and a beam former comprising circuitry configured to: process a plurality of user data symbols to separate signals intended for the M users in the user group; and transmit the separate signals to the user group of M users using one or more antennas.
 12. The communication system of claim 11, wherein the user scheduler is further configured to identify the group of M users by determining a subset of a total number of users in the communication system.
 13. The communication system of claim 11, the user scheduler is further configured to determine the group of M users such that M is an integer that is less than a number of the one or more antennas.
 14. The communication system of claim 11, wherein the user scheduler is further configured to identify the group of M users using a system capacity associated with the group of M users.
 15. The communication system of claim 11, wherein the user scheduler is further configured to identify the user group of M users using a double search user group selection scheme.
 16. The communication system of claim 15, wherein the user scheduler is further configured to use the double search user group selection scheme that comprises: sorting a plurality of users in the communication system according to a channel power associated with each of the plurality of users in the communication system; initializing a system capacity to a value of a system capacity associated with a first user having the greatest channel power of the plurality of users in the communication system; determining that a second user has a greater system capacity than the system capacity of the first user; and selecting the second user for the group of M users.
 17. The communication system of claim 15, wherein the user scheduler is configured to identify the user group further using range reduction.
 18. The communication system of claim 17, wherein the user scheduler is configured to perform range reduction by selecting the group of M users from among a subset L of a plurality of users in the communication system.
 19. The communication system of claim 18, the user scheduler is further configured to update the subset L in real time based on online channel measurements.
 20. The communication system claim 11, wherein the beam former is further configured to process the plurality of user data symbols to separate signals intended for the M users in the user group such that interference from other users is mitigated for each user. 